﻿using Mes.Pendant.SupplierInterface.SupplierDto;
using Mes.Pendant.SupplierManagements;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Linq.Dynamic.Core;
using System.Text;
using System.Threading.Tasks;
using Volo.Abp.Application.Services;

namespace Mes.Pendant.SupplierInterface
{
    public interface ISupplierService : IApplicationService
	{
        /// <summary>
        /// 新增供应商
        /// </summary>
        /// <param name="dto">供应商dto</param>
        /// <returns>返回受影响行数</returns>
        Task<int> AddSupplier(SupplierManagementDto supplierManagementDto);

        /// <summary>
        /// 显示供应商
        /// </summary>
        /// <param name="supplierCode"></param>
        /// <param name="supplierName"></param>
        /// <param name="abbreviation"></param>
        /// <param name="state"></param>
        /// <param name="page"></param>
        /// <param name="limit"></param>
        /// <returns></returns>
        Task<PagedResult> GetSupplierrList(string? supplierCode, string? supplierName, string? abbreviation, bool? state, int page = 1, int limit = 10);

        Task<int> DeleteSupplier(int id);

        Task<int> UpdateSupplier(SupplierManagementDto supplierManagementDto);

        Task<SupplierManagementDto> GetSupplierInfo(int id);
    }
}
